package com.example.pojo;

import com.baomidou.mybatisplus.annotation.*;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.math.BigDecimal;
import java.time.LocalDateTime;

@Data
@NoArgsConstructor
@AllArgsConstructor
@TableName("employee_salary")
public class UserSalary {

    // 记录 ID，唯一标识每条工资记录，自增
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    // 员工 ID，唯一标识每个员工
    private Integer employeeId;

    // 员工姓名
    private String name;

    // 职务 ID，关联职务工资表中的职务，用于确定员工的职务
    private Integer positionId;

    // 该员工的扣款金额，如迟到、罚款等，默认值为 0
    private BigDecimal deduction;

    // 该员工的提成金额，根据业绩等情况计算得出，默认值为 0
    private BigDecimal commission;

    // 该员工对应职务的基本工资，根据职务 ID 从职务工资表获取
    private BigDecimal baseSalary;

    // 员工实际获得的工资，通过基本工资加上提成再减去扣款金额自动计算得出
    private BigDecimal actualSalary;
    //    创建该客户记录的人员id
    @TableField(fill = FieldFill.INSERT)
    private Integer createBy;
    //    创建该客户记录的时间
    @TableField(fill = FieldFill.INSERT)
//    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;
    //    最后修改该客户记录的人员id
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Integer updateBy;
    //    最后修改该客户记录的时间
    @TableField(fill = FieldFill.INSERT_UPDATE)
//    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;
}